package com.example.kaogong.sys.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.example.kaogong.common.utils.RespBean;
import com.example.kaogong.sys.pojo.Question;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.kaogong.sys.pojo.dto.QuestionDto;
import com.example.kaogong.sys.pojo.vo.QuestionVo;

import java.util.List;

/**
 * <p>
 * 题目 服务类
 * </p>
 *
 * @author    
 * @since 2022-03-26
 */
public interface IQuestionService extends IService<Question> {

    /**
     * 教师新增一道试题
     * @param questionDto
     * @param name
     * @return
     */
    RespBean addQuestion(QuestionDto questionDto, String name);

    /**
     * 根据试题编号删除试题
     * @param questionId
     * @return
     */
    RespBean deleteQuestionByQuestionId(Integer questionId);

    /**
     * 分页查询当前教师所出所有试题
     * @param current
     * @param size
     * @param name
     * @return
     */
    RespBean<Page<QuestionVo>> getAllQuestion(Long current, Long size, String name);

    /**
     * 教师修改自己所出试题
     * @param questionVo
     * @param name
     * @return
     */
    RespBean updateQuestion(QuestionVo questionVo, String name);

    /**
     * 获取题库中某种题型的全部试题
     * @param type
     * @return
     */
    RespBean<List<QuestionVo>> getAllQuestionByType(Integer type);
}
